$(function () {
  let q = {
    pagenum: 1,
    pagesize: 2,
    cate_id: "",
    state: "",
  };

  const layer = layui.layer;

  getUserList();
  function getUserList() {
    $.ajax({
      method: "get",
      url: "/my/article/list",
      data: q,
      success: function (res) {
        console.log(res);
        if (res.status !== 0) {
          return layer.msg(res.message);
        }
        let htmlStr = template("form-List", res);
        $("tbody").html(htmlStr);
        // 分页器函数传参
        renderPage(res.total);
      },
    });
  }

  // 定义美化时间的过滤器
  template.defaults.imports.dataFormat = function (date) {
    const dt = new Date(date);

    var y = dt.getFullYear();
    var m = padZero(dt.getMonth() + 1);
    var d = padZero(dt.getDate());

    var hh = padZero(dt.getHours());
    var mm = padZero(dt.getMinutes());
    var ss = padZero(dt.getSeconds());

    return y + "-" + m + "-" + d + " " + hh + ":" + mm + ":" + ss;
  };

  // 定义补零的函数
  function padZero(n) {
    return n > 9 ? n : "0" + n;
  }

  //发起请求获取并渲染文章分类的下拉选择框
  initUserList();
  function initUserList() {
    $.ajax({
      method: "get",
      url: "/my/article/cates",
      success: function (res) {
        console.log(res);
        if (res.status !== 0) {
          return layer.msg(res.message);
        }
        let htmlStr = template("tap-cates", res);
        $("#cateid").html(htmlStr);
        // render() // 通过 layui 重新渲染表单区域的UI结构
        layui.form.render();
      },
    });
  }

  // 筛选功能
  $("#form-search").on("submit", function (e) {
    e.preventDefault();
    let cate_id = $("#cateid").val();
    let state = $("#state").val();

    // 给q赋值
    q.cate_id = cate_id;
    q.state = state;
    // 重新渲染
    getUserList();
  });

  //分页器  分页功能
  function renderPage(total) {
    // console.log(total);
    const laypage = layui.laypage;
    // 调用 laypage.render() 方法来渲染分页的结构
    laypage.render({
      elem: "pageBox", // 分页的盒子id
      count: total, // 总数
      limit: q.pagesize, // 一页显示几个
      curr: q.pagenum, // 默认显示的页面
      limits: [2, 3, 5],
      layout: ["count", "limit", "prev", "page", "next", "skip"],
      jump: function (obj, first) {
        //obj包含了当前分页的所有参数，比如：
        console.log(obj.curr); //得到当前页，以便向服务端请求对应页的数据。
        console.log(obj.limit); //得到每页显示的条数
        q.pagenum = obj.curr;
        q.pagesize = obj.limit;
        //首次不执行
        if (!first) {
          // 请求列表数据
          getUserList();
        }
      },
    });
  }

  // 删除功能
    $("tbody").on("click", ".btn-pub", function () {
      let length = $('.btn-pub').length;
      console.log(length);
      let id = $(this).attr("data-id");
      layer.confirm("确认删除?", { icon: 3, title: "提示" }, function (index) {
        $.ajax({
          method: "get",
          url: `/my/article/delete/${id}`,
          success: function (res) {
            console.log(res);
            if (res.status !== 0) {
              return layer.msg(res.message);
            }
            layer.msg(res.message);
            if(length === 1){
              q.pagenum = q.pagenum === 1 ? 1 : q.pagenum - 1
            }
            layer.close(index);
            getUserList();
          },
        });
      });
    });
});
1